CS 3120 Winter 2004 Home Page
CS 3120 - Programming Language Concepts - 4 Credits 

Instructor: David Yang (e-mail: dyang@csuhayward.edu, 885-3449)

In this course, we will:

  • examine in more detail the choices that are made when designing a programming language,
  • study how common features in languages are implemented by the machine
  • and gain experience with styles of programming other than the object-oriented and procedural styles you've experienced so far

I hope that after this course you will feel more comfortable picking up new languages and in understanding and evaluating the design of a language. Also, you should be better prepared for some later courses in computer science, including compilers and artificial intelligence.

The material for this course course is covered in part of the comprehensive exam.

Prerequisites:
CS 2360 Programming Methods and Introduction to Software Engineering
CS 2430 Computer Organization and Assembly Language Programming

Text:
Pratt and Zelkowitz, Programming Languages: Design and Implementation, 4th ed., 2001, Prentice-Hall, ISBN: 0-13-027678-2.

Calculation of your grade:There will be two exams during the quarter, worth 15% each. The final is worth 30% of your final grade. Written assignments are worth 20% of your grade. Programming assignments are worth 20% of your grade.

Lateness: Assignments need to be submitted to me through Blackboard by the deadline. Exceptions will be made under extreme conditions, but this would mean something like school closing/power outage.

Final grades will be given according to the following scale: 

93-100 A, 90-92 A-, 87-89 B+, 83-86 B, 80-82 B-, 77-79 C+, 73-76 C, 70-72 C-, 

67-69 D+, 60-66 D, 0-59 F

Academic Honesty: This course will follow the University's standard policy on academic dishonesty. In particular, any cheating, or assisting another students cheating on any test, or the final exam will be penalized by either a zero on the test, or by failure of the course, at my discretion.

Finally, if you cheat (whether you do the copying or let someone copy) twice during this course, you will automatically fail the course. Remember that the University may inflict further penalties than listed here under the provisions of the published Academic Dishonesty Policy. 

Attendance: I will take attendance through the end of the add/drop period. Note that while I will be uploading lecture notes to Blackboard after the lecture, they sometimes include material not covered in the text, and they include thought questions for class discussion that won't always be answered within the notes.

Classrooms: 

Monday, Wednesday, Friday 10:40am-11:50am Science North 112

Office Hours: My office is in room 433 (South) of the Science Building. My schedule for office hours is: 

  • Monday, Wednesday, Friday 2:40-3:40pm
I will also be available at other times -- if I'm free, you should feel free to stop by with any questions you have. You can make an appointment to make sure I'm available and free at that time, but it's not a big deal. This is the only source of individualized attention you get, so use it.

Click here for the class schedule


 
This webpage's layout is originally from Bill Parkinson, who used to teach in the evening program at St. Joseph's University. Much of the content is lifted from Steve Cooper's version of this course -- in particular, the project documents were designed by him, though parts are adapted from elsewhere.